Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Prague 3 Challenger Mallorca Challenger Davis Cup, Group I, 1R, AUT-POR 1-3 Lisbon Challenger Bratislava 2 Challenger Malaga Challenger Ortisei Challenger Ismaning Challenger Calgary Challenger Drummondville Challenger Oeiras 2 Challenger Oeiras 1 Challenger Davis Cup, World Group, Q, FIN-POR 3-1 Girona Challenger Millennium Estoril Open - Estoril French Open - Paris Poznan Challenger Mallorca Championships - Mallorca Perugia Challenger Western & Southern Open - Cincinnati National Bank Open - Montreal Winston-Salem Open - Winston-Salem U.S. Open - New York Davis Cup, Group B, Valencia China Open - Beijing Erste Bank Open - Vienna Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Tenerife 2 Challenger Tenerife 1 Challenger Open Occitanie - Montpellier United Cup - Australia ASB Classic - Auckland Australian Open - Melbourne Barcelona Open Banc Sabadell - Barcelona Girona Challenger Mutua Madrid Open - Madrid Cassis Challenger Internazionali BNL d'Italia - Rome French Open - Paris Cincinnati Open - Cincinnati Heilbronn Challenger Lyon Challenger National Bank Open - Toronto U.S. Open - New York Seville Challenger Davis Cup, World Group, Q2, ESP-DEN 3-2 Bad Waltersdorf Challenger Spain F17 Spain F18 Spain F19 Spain F22 Spain F23 Spain F26 Spain F27 Spain F33 Spain F34 Spain F35 Portugal F4 Portugal F5 Spain F38 Spain F39 Spain F40 Spain F41 Spain F5 Spain F6 Spain F8 Spain F9 Spain F10 Spain F13 Spain F18 Spain F19 Spain F20 Romania F10 Romania F11 Spain F30 Spain F31 Spain F33 Spain F34 Portugal F7 Portugal F8 Spain F38 Spain F39 Spain F40 Spain F41 Spain F42 United Arab Emirates F1 United Arab Emirates F2 Spain F3 Spain F3 Spain F4 Spain F5 Spain F6 Spain F7 Spain F10 Egypt F5 Turkey F4 Egypt F6 Turkey F5 Spain F13 Turkey F6 Spain F14 Spain F15 Spain F16 Spain F17 Spain F18 Spain F20 Spain F21 Spain F22 France F12 Spain F28 Spain F29 Spain F30 Portugal F4 Spain F31 Portugal F5 Spain F32 Spain F34 Spain F33 Spain F35 Spain F36 Spain F37 Spain F1 Spain F2 Spain F3 Spain F4 Spain F7 Spain F9 Italy F2 Spain F10 Italy F3 Spain F11 Spain F14 Spain F15 Spain F16 Spain F17 Spain F18 Spain F19 Spain F20 Spain F23 Italy F17 Spain F27 Spain F31 Spain F32 Spain F35 Spain F36 Spain F37 Spain F38 Spain F39 Spain F2 Spain F3 Spain F5 Spain F6 Spain F11 France F4 Spain F14 Spain F15 Spain F28 Spain F36 Spain F37 Spain F38 Morocco F6 Morocco F7 Morocco F10 Turkey F2 Turkey F3 Spain F1 Spain F2 Spain F3 Spain F4 Spain F17 Spain F6 Spain F7 Morocco F9 Courmayeur Challenger Kos Succhetti Tennis Cup - Cordenons Mamaia Challenger - Constanta Seville Challenger Tarragona Challenger Rennes Challenger Tanger Challenger Meknes Challenger Rabat Challenger Leon Challenger Tallahassee Challenger Tunis Challenger Alessandria Challenger Bytom Challenger Recanati Challenger Tampere Challenger Istanbul Challenger Manerbio Challenger Sao Paulo Challenger Heilbronn Challenger Quimper Challenger Casablanca Challenger Rabat Challenger Guangzhou Challenger Caltanissetta Challenger Pingguo Challenger St. Brieuc Challenger Rome Challenger Rome Challenger Cremona Challenger Alessandria Challenger Furth Challenger Kosice Challenger Milan Challenger Marburg Challenger Braunschweig Challenger Pozoblanco Challenger Tampere Challenger Segovia Challenger Reggio Emilia Challenger San Marino Challenger Turin Challenger Pozoblanco Challenger Como Challenger Seville Challenger Banja Luka Challenger Trnava Challenger Ljubljana Challenger Madrid Challenger Napoli Challenger Palermo Challenger Buenos Aires Challenger Heilbronn Challenger Kazan Challenger Quimper Challenger Bergamo Challenger Meknes Challenger Casablanca Challenger Marrakech Challenger Mersin Challenger Rome Challenger Bordeaux Challenger Furth Challenger Milan Challenger Tampere Challenger Sibiu Challenger Cordenons Challenger Como Challenger Alphen Challenger Trnava Challenger Madrid Challenger San Juan Challenger Rio De Janeiro Challenger Porto Alegre Challenger Montevideo Challenger Geneva Challenger Seville Challenger Eckental Challenger Izmir Challenger Orbetello Challenger Rome Challenger Bordeaux Challenger Caltanissetta Challenger Furth Challenger Blois Challenger Kosice Challenger Tanger Challenger Todi Challenger San Benedetto Challenger Poznan Challenger Kosice Challenger Guimaraes Challenger Orbetello Challenger Segovia Challenger Como Challenger Genova Challenger Marrakech Challenger San Sebastian Challenger Manerbio Challenger Szczecin Challenger Caltanissetta Challenger Mohammedia Challenger Braunschweig Challenger Timisoara Challenger Rabat Challenger San Sebastian Challenger Seville Challenger Meknes Challenger Cordenons Challenger Perugia Challenger Braunschweig Challenger Poznan Challenger Seville Challenger Szczecin Challenger Mohammedia Challenger Marburg Challenger Antalya 2 Challenger Mallorca Challenger Cassis Challenger Biel Challenger Orleans Challenger Alicante Challenger Brest Challenger Tenerife Challenger Bratislava Challenger Helsinki Challenger Quimper Challenger Phoenix Challenger Girona Challenger Oeiras 3 Challenger Aix En Provence Challenger Tunis Challenger Vicenza Challenger Porto Challenger Braga Challenger Trani Challenger Montemar Challenger 84° Concurso Internacional Tenis San Sebastian - San Sebastian Alicante Challenger Prostejov Challenger Madrid Challenger Medellin Challenger Murcia Challenger Maia Challenger Estoril Open - Estoril Estoril Open - Estoril Open Sabadell Atlantico - Barcelona Estoril Open - Estoril If Stockholm Open - Stockholm Open Sud de France - Montpellier Open 13 - Marseille Grand Prix Hassan II - Casablanca Open Sabadell Atlantico - Barcelona Estoril Open - Estoril German Tennis Championships - Hamburg If Stockholm Open - Stockholm Aircel Chennai Open - Chennai Open Sud de France - Montpellier Open Sabadell Atlantico - Barcelona Estoril Open - Estoril Credit Agricole Suisse Open - Gstaad Aircel Chennai Open - Chennai Apia International - Sydney VTR Open - Vina del Mar Brasil Open - Sao Paulo Copa Claro - Buenos Aires Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Portugal Open - Oeiras Power Horse Cup - Dusseldorf Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Malaysian Open - Kuala Lumpur China Open - Beijing If Stockholm Open - Stockholm Kremlin Cup - Moscow Valencia Open - Valencia Qatar ExxonMobil Open - Doha Aircel Chennai Open - Chennai Apia International - Sydney Heineken Open - Auckland Open Sud de France - Montpellier Royal Guard Open Chile - Vina del Mar Copa Claro - Buenos Aires Rio Open 500 - Rio de Janeiro Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Portugal Open - Oeiras Power Horse Cup - Dusseldorf Gerry Weber Open - Halle Topshelf Open - 's-Hertogenbosch SkiStar Swedish Open - Bastad Bet-at-home Open - Hamburg Vegeta Croatia Open - Umag Moselle Open - Metz Malaysian Open - Kuala Lumpur China Open - Beijing If Stockholm Open - Stockholm Valencia Open - Valencia Aircel Chennai Open - Chennai Heineken Open - Auckland Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Brasil Open - Sao Paulo Rio Open - Rio de Janeiro Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai Argentina Open - Buenos Aires Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Geneva Open - Geneva Open de Nice Cote d'Azur - Nice Topshelf Open - 's-Hertogenbosch AEGON Championships - London Aegon Nottingham Open - Nottingham Vegeta Croatia Open - Umag Credit Agricole Suisse Open - Gstaad Austrian Open - Kitzbuhel Winston-Salem Open - Winston-Salem Moselle Open - Metz Malaysian Open - Kuala Lumpur Rakuten Japan Open - Tokyo Kremlin Cup - Moscow If Stockholm Open - Stockholm Valencia Open - Valencia St. Petersburg Open - St. Petersburg Millennium Estoril Open - Estoril Qatar ExxonMobil Open - Doha ASB Classic - Auckland Open Sud de France - Montpellier Ecuador Open - Quito ABN AMRO World Tennis Tournament - Rotterdam Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Geneva Open - Geneva Open de Nice Cote d'Azur - Nice Gerry Weber Open - Halle Aegon Nottingham Open - Nottingham SkiStar Swedish Open - Bastad Konzum Croatia Open - Umag Abierto Mexicano - Los Cabos Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu China Open - Beijing Rakuten Japan Open - Tokyo Kremlin Cup - Moscow European Open - Antwerp Swiss Indoors Basel - Basel Erste Bank Open - Vienna ASB Classic - Auckland Apia International - Sydney Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Geneva Open - Geneva Antalya Cup - Antalya SkiStar Swedish Open - Bastad Konzum Croatia Open - Umag Suisse Open - Gstaad Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Shenzhen Open - Shenzhen China Open - Beijing Rakuten Japan Open - Tokyo European Open - Antwerp Kremlin Cup - Moscow Swiss Indoors Basel - Basel Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha ASB Classic - Auckland Ecuador Open - Quito Garanti Koza Sofia Open - Sofia ABN AMRO World Tennis Tournament - Rotterdam Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Open Parc - Lyon Gerry Weber Open - Halle Antalya Cup - Antalya SkiStar Swedish Open - Bastad Plava Laguna Croatia Open - Umag German Tennis Championships - Hamburg Swiss Open - Gstaad Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu China Open - Beijing Swiss Indoors Basel - Basel ASB Classic - Auckland Cordoba Open - Cordoba Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Barcelona Open Banc Sabadell - Barcelona Millennium Estoril Open - Estoril Geneva Open - Geneva Libema Open - 's-Hertogenbosch Noventi Open - Halle Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad German Tennis Championships - Hamburg Swiss Open - Gstaad Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem Moselle Open - Metz St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu Rakuten Japan Open - Tokyo Intrum Stockholm Open - Stockholm Swiss Indoors Basel - Basel Erste Bank Open - Vienna ASB Classic - Auckland Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Dubai Duty Free Tennis Championships - Dubai Generali Open - Kitzbuhel European Open - Antwerp Erste Bank Open - Vienna Cordoba Open - Cordoba Argentina Open - Buenos Aires Chile Dove Men+Care Open - Santiago Abierto Mexicano Telcel - Acapulco Dubai Duty Free Tennis Championships - Dubai Barcelona Open Banc Sabadell - Barcelona Serbia Open - Belgrade Millennium Estoril Open - Estoril Open Parc - Lyon Mercedes Cup - Stuttgart Noventi Open - Halle Mallorca Championships - Mallorca Hamburg European Open - Hamburg Winston-Salem Open - Winston-Salem Moselle Open - Metz Erste Bank Open - Vienna Anytech365 Andalucia Open - Marbella Sardegna Open - Cagliari Melbourne Summer Set - Melbourne Tata Open Maharashtra - Pune Rio Open - Rio de Janeiro Qatar ExxonMobil Open - Doha Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona Serbia Open - Belgrade Millennium Estoril Open - Estoril Gonet Geneva Open - Geneva Open Parc - Lyon Mercedes Cup - Stuttgart Noventi Open - Halle Mallorca Championships - Mallorca Nordea Open - Bastad Hamburg European Open - Hamburg Swiss Open - Gstaad Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem Moselle Open - Metz Sofia Open - Sofia Stockholm Open - Stockholm Swiss Indoors Basel - Basel Erste Bank Open - Vienna Tel Aviv Watergen Open - Tel Aviv Gijon Open - Gijon Tennis Napoli Open - Naples Adelaide International 2 - Adelaide ASB Classic - Auckland Cordoba Open - Cordoba ABN AMRO World Tennis Tournament - Rotterdam Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Chile Dove Men+Care Open - Santiago Millennium Estoril Open - Estoril Grand Prix Hassan II - Marrakech Hamburg European Open - Hamburg Studena Croatia Open - Umag Hall of Fame Open - Newport Heineken Open - Auckland Bet-at-home Cup - Kitzbuhel Winston-Salem Open - Winston-Salem Winston-Salem Open - Winston-Salem Gerry Weber Open - Halle Adelaide International - Adelaide Dubai Duty Free Tennis Championships - Dubai BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Internazionali BNL d'Italia - Rome Western & Southern Open - New York Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome National Bank Open - Montreal Western & Southern Open - Cincinnati Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Davis Cup, Group 2, 2R, POR-CYP 5-0 Davis Cup, Group 2, 1R, CYP-POR 3-2 Davis Cup, Group 2, PO, ALG-POR 0-5 Davis Cup, Europe/Africa Group II, 2R, POR-CYP 5-0 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 Davis Cup, Group I, 1R, POR-SVK 4-1 Davis Cup, Group I, 2R, SUI-POR 5-0 Davis Cup, Group I, 2R, ISR-POR 3-2 Davis Cup, Group I, PO, SVK-POR 3-1 Davis Cup, Group II, 1R, POR-BEN 5-0 Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group I, 1R, SLO-POR 3-2 Davis Cup, Group I, PO, RUS-POR 4-1 Davis Cup, Group II, 1R, POR-MAR 4-1 Davis Cup, Group II, 2R, POR-FIN 4-1 Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group I, 1R, POR-AUT 1-4 Davis Cup, Group I, 2R, ROU-ESP 1-4 Davis Cup, Group I, PO, POR-SLO 5-0 Davis Cup, World Group, 1R, CRO-ESP 2-3 Davis Cup, Group I, 1R, POR-ISR 5-0 Davis Cup, World Group, QF, SRB-ESP 4-1 Davis Cup, Group I, 2R, POR-UKR 4-1 Davis Cup, World Group, PO, POR-GER 2-3 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, World Group, SF, FRA-ESP 3-2 Davis Cup, Group I, PO, UKR-POR 3-1 Davis Cup, Group I, PO, POR-RSA 4-0 Davis Cup, World Group, QR, KAZ-POR 3-1 Davis Cup, Group I, 1R, BLR-POR 3-2 Davis Cup, Finals, QF, ARG-ESP 1-2 Davis Cup, World Group I, PO, LTU-POR 0-4 ATP Cup - Melbourne Davis Cup, Group I, 1R, ROU-POR 3-1 Davis Cup, Finals, Group A ATP Cup - Sydney Davis Cup, Group I, PO, POR-POL 4-0 Davis Cup, Group I, 1R, POR-BRA 3-1 Davis Cup, Finals, QF, CRO-ESP 2-0 U.S. Open (juniors) Australian Open (juniors) French Open (juniors) Davis Cup, World Group, PO, POR-CZE 1-3 Mutua Madrid Open - Madrid Kooyong Classic - Kooyong Mubadala World Tennis Championship All Lower level tournaments Olympics - Rio de Janeiro Nitto ATP Finals - London Olympics - Tokyo